// import * as echarts from 'echarts'

export default{
	getDomById(id){
		return uni.createSelectorQuery().select('#'+id).boundingClientRect(res => {
		  // console.log(res) // 包含位置尺寸信息
		  return res;
		}).exec()
	},

	drawCustomizedPie(legend,series) {
		// 基于准备好的dom，初始化echarts实例drawLine
		// let myChart = echarts.init(this.getDomById(name));
		// const myChart = await this.$refs.chartRef.init(echarts);
		let option1  = {
		  title: {
			left: 'center',
			top: 20,
			textStyle: {
			  color: '#ccc'
			}
		  },
		  tooltip: {
			trigger: 'item'
		  },
		  legend: {
			// orient: 'vertical', // 垂直排列
			left: 'center',      // 靠右显示
			// top: 'center',      // 垂直居中
			bottom: 10,
			data: legend,
			textStyle: {
			  color: '#fff',
			},
			padding: [
			  0,  // 上
			  10, // 右
			  0,  // 下
			  0, // 左
			],
			// 关键配置：自定义图例文本格式
			formatter: function(name) {
			  // 在数据中查找匹配项
			  const target = series.find(item => item.name === name);
			  return `${name}: ${target.value}`;
			}
		  },
		  visualMap: {
			show: false,
			min: 80,
			max: 600,
			inRange: {
			  colorLightness: [0, 1]
			}
		  },
		  series: [
			{
			  type: 'pie',
			  radius: '55%',
			  center: ['50%', '50%'],
			  data: series.sort(function (a, b) {
				return a.value - b.value;
			  }),
			  roseType: 'radius',
			  label: {
				color: '#fff'
			  },
			  labelLine: {
				lineStyle: {
				  color: '#fff'
				},
				smooth: 0.2,
				length: 10,
				length2: 20
			  },
			  itemStyle: {
				color: '#c23531',
				shadowBlur: 200,
				shadowColor: '#fff'
			  },
			  animationType: 'scale',
			  animationEasing: 'elasticOut',
			  animationDelay: function (idx) {
				return Math.random() * 200;
			  }
			}
		  ]
		};
		return option1
	  },
	  
	drawBar1(legend,xaxis,series){
		// 基于准备好的dom，初始化echarts实例drawLine
		// let myChart = echarts.init(this.getDomById(name));
		// 绘制图表
		let option1 = {
		 legend: {
		   icon: "circle",
	//            right:'4%',
		   left:'left',
	//            padding: [
	//              0,  // 上
	//              0, // 右
	//              0,  // 下
	//              50, // 左
	//            ],
	//            data: legend,
		 },
		  grid: {
			left: "3%",
			right: "4%",
			bottom: "3%",
			top: '10%',
			containLabel: true
		  },
		  tooltip: {
			trigger: 'axis'
		  },
		  xAxis: {
			//x轴
			type: 'category',
			data: xaxis,
			axisLabel: {
			  textStyle: {
				color: "#ffffff",
				padding:3,
			  }
			}
		  },
		  yAxis: {
			type: 'value',
			axisLabel: {
			  textStyle: {
				color: '#ffffff' // 修改为需要的颜色值
			  }
			},
		  },
		  series:  {
			data: series,
			barWidth: 30,
			type: 'bar',
			label: {  // 核心配置
				show: true,        // 启用标签
				position: 'top',   // 显示在柱子上方
				formatter: '{c}',   // 显示数据值（{c} 是数据占位符）
				color: '#ffffff',      // 字体颜色
				fontSize: 12       // 字体大小
			}
			// label: {  // 关键配置项
			//   show: true,
			//   position: 'top', // 标签位置
			//   formatter: function(params) {  // 动态获取 x 轴值
			//     return xaxis[params.dataIndex]; // 直接返回对应类目名称
			//   }
			// }
		  }
		};
		return option1
	},
	
	 drawpadAngle(legend,series){
	      // 基于准备好的dom，初始化echarts实例drawLine
		// 绘制图表
		let option1 = {
		  legend: {
			icon: "circle",
			data: legend,
			// orient: 'vertical', // 垂直排列
			left: 'center',      // 靠右显示
			// top: 'center',       // 垂直居中
			bottom: 10,
			padding: [
			  0,  // 上
			  10, // 右
			  0,  // 下
			  0, // 左
			],
			textStyle: {
			  color: '#ffffff'  // 将图例文字颜色设置为红色
			},
		  },
		  grid: {
			left: "3%",
			right: "3%",
			bottom: "3%",
			top: '2%',
			containLabel: true
		  },
		  tooltip: {
			trigger: 'item'
		  },
		  series:  [
			{
			  type: 'pie',
			  radius: ['30%', '60%'],
			  avoidLabelOverlap: false,
			  // padAngle: 5,
			  // itemStyle: {
			  //   borderRadius: 0
			  // },
			  label: {
				show: true,
				fontSize:12,
				color:'#ffffff',
				// formatter: '{b}: {c} ({d}%)',  // {b}名称 {c}数值 {d}百分比
				formatter: '{b}: {c}',  // {b}名称 {c}数值 {d}百分比
			  },
			  labelLine: {
				show: true,
				fontSize:12,
				color:'#fff'
			  },
			  emphasis: {
				label: {
				  show: true,
				  fontSize: 12,
				  fontWeight: 'bold',
				  color:'#fff'
				}
			  },

			  data: series
			}
		  ]
		};
		return option1
	  },
	  
	  drawBar(yname,ydata,series){
		  // 基于准备好的dom，初始化echarts实例drawLine
		  // 绘制图表
		  let option1 = {
	//          legend: {
	//            icon: "circle",
	////            right:'4%',
	//            left:'left',
	////            padding: [
	////              0,  // 上
	////              0, // 右
	////              0,  // 下
	////              50, // 左
	////            ],
	////            data: legend,
	//          },
			grid: {
			  left: "3%",
			  right: "4%",
			  bottom: "5%",
			  top: '5%',
			  containLabel: true
			},
			tooltip: {
			  trigger: 'axis'
			},
			xAxis: {
			  //x轴
			  type: 'value',
			  splitLine: {
				show: true,
				lineStyle: {
				  color: '#57689d', // 设置为红色网格线
				  type: 'dashed',
				  dashArray: [10, 5] // 关键参数：虚线每段长10px，间隔5px
				}
			  },
			  axisLine: {
				lineStyle: {
				  color: '#ffffff', // x 轴线条设为绿色
				  width: 1
				}
			  },
			  axisLabel: {
				textStyle: {
				  color: '#ffffff' // 修改为需要的颜色值
				}
			  }
			},
			yAxis: {
			  type: 'category',
			  axisLabel: {
				textStyle: {
				  color: '#ffffff' // 修改为需要的颜色值
				}
			  },
			  data: ydata
			},
			series:  {
			  name:yname,
			  data: series,
			  type: 'bar'
			}
		  };
		  return option1;
		},
		drawLine(legend,xaxis,series) {
			// 基于准备好的dom，初始化echarts实例drawLine
			// 绘制图表
			let option1 = {
			  legend: {
				icon: "circle",
				bottom:'5%',
	//            left:'left',
				padding: [
				  0,  // 上
				  0, // 右
				  0,  // 下
				  50, // 左
				],
				textStyle: {
				  color: '#ffffff'  // 将图例文字颜色设置为红色
				},
				data: legend,
			  },
			  grid: {
				left: "3%",
				right: "2%",
				bottom: "15%",
				top: '5%',
				containLabel: true
			  },
			  tooltip: {
				trigger: 'axis'
			  },
			  xAxis: {
				//x轴
				data: xaxis,
				boundaryGap: false,  // 关闭坐标轴两端留白，数据紧贴边缘
				// boundaryGap: [0.1, 0.1],  // 左右两边各留10%的空白
				type: 'category',
				axisLabel: {
				  textStyle: {
					color: '#ffffff' // 修改为需要的颜色值
				  },
				  formatter: (value, index) => {
					if (index === 0) return '{l|' + value + '}';     // 首标签左对齐
					if (index === xaxis.length - 1) return '{r|' + value + '}'; // 尾标签右对齐
					return value;
				  },
				  rich: {
					l: { align: 'left', padding: [0, -60,0,0] },  // 左对齐样式
					r: { align: 'right', padding: [0, 0, 0, -60]}  // 右对齐样式
				  }
				},
				axisLine: {
				  lineStyle: {
					color: '#7aa7d5', // x 轴线条设为绿色
					width: 1
				  }
				},
			  },
			  yAxis: {
				type: 'value',
				splitLine: {
				  show: true,
				  lineStyle: {
					color: '#7aa7d5', // 设置为红色网格线
					type: 'dashed'
				  }
				},
				axisLabel: {
				  textStyle: {
					color: '#ffffff' // 修改为需要的颜色值
				  }
				}
			  },
			  series:  series
			};
			return option1
		  },
		drawpieDoughnut(legend, series){
		// 基于准备好的dom，初始化echarts实例drawLine
		let option1 = {
		  legend: {
			show:true,
			icon: "circle",
			data:legend,
			// orient: 'vertical', // 垂直排列
			left: 'center',      // 靠右显示
			// top: 'center',      // 垂直居中
			// right: 'right',
			// orient: 'vertical',
			bottom: 10,
			textStyle: {
			  fontSize: 12,
			  color: '#fff'
			},
			// itemWidth: 20,
			// itemHeight: 14,
			padding: [
			  0,  // 上
			  10, // 右
			  0,  // 下
			  0, // 左
			],
		  },
		  grid: {
			left: "3%",
			right: "5%",
			bottom: "10%",
			top: '2%',
			containLabel: true
		  },
		  tooltip: {
			trigger: 'item',
		  },
		  series:  [
			{
			  type: 'pie',
			  radius: ['30%', '60%'],
			  // radius: '70%',
			  avoidLabelOverlap: false,
			  label: {
				show: true,
				fontSize:12,
				color:'#ffffff',
				// formatter: '{b}: {c} ({d}%)',  // {b}名称 {c}数值 {d}百分比
				formatter: '{b}: {c}',  // {b}名称 {c}数值 {d}百分比
			  },
			  emphasis: {
				label: {
				  show: true,
				  fontSize: 12,
				  fontWeight: 'bold',
				  color:'#fff'
				}
			  },
			  data: series
			}
		  ]
		};
		return option1
	  },
		
		
		
		
	
}